Restructure VT-d device scope and PCI bridge handling
authorKeir Fraser <keir.fraser@citrix.com>
Fri, 4 Jul 2008 16:51:42 +0000 (17:51 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Fri, 4 Jul 2008 16:51:42 +0000 (17:51 +0100)
commitf800030ddb9dc9b85bf5ab28af612d85b4638c71
tree30a8aedf7ebbabca1a590152351b29198645f1fe
parent8644e176dc6edb9073dacd730035666b36faca74
Restructure VT-d device scope and PCI bridge handling

Create a bitmap for each device scope indicating which buses are
covered by the scope.  Upon mapping PCI-PCI bridges we now detect
whether we have a bridge to a non-PCIe bus.  If so, all devices mapped
on that bus are squashed to the requester-id of the bridge.  Bridges
to PCIe busses are ignored.  The requester-id squashing also
determines the iommu device group id for the device.

Signed-off-by: Espen Skoglund <espen.skoglund@netronome.com>
xen/drivers/passthrough/vtd/dmar.c
xen/drivers/passthrough/vtd/dmar.h
xen/drivers/passthrough/vtd/intremap.c
xen/drivers/passthrough/vtd/iommu.c
xen/drivers/passthrough/vtd/utils.c
xen/include/xen/pci.h